abstraction phase